package com.zhaotianhao.service.impl;

import com.zhaotianhao.pojo.Carts;
import com.zhaotianhao.mapper.CartsMapper;
import com.zhaotianhao.service.CartsService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * (Carts)表服务实现类
 *
 * @author Z-7
 * @since 2022-03-03 14:37:34
 */
@DubboService
public class CartsServiceImpl implements CartsService {
    @Autowired
    private CartsMapper cartsMapper;

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    @Override
    public Carts queryById(Integer id) {
        return this.cartsMapper.queryById(id);
    }

    /**
     * 分页查询
     *
     * @param carts 筛选条件
     * @param pageNum 起始页数
     * @param pageSize 分页偏移量
     * @return 查询结果
     */
    @Override
    public PageInfo<Carts> queryByPage(Carts carts,int pageNum,int pageSize) {
        PageHelper.startPage(pageNum,pageSize);
        return new PageInfo<>(this.cartsMapper.queryAll(carts));
    }

    /**
     * 新增数据
     *
     * @param carts 实例对象
     * @return 影响行数
     */
    @Override
    public int insert(Carts carts) {
        return this.cartsMapper.insert(carts);
    }

    /**
     * 修改数据
     *
     * @param carts 实例对象
     * @return 影响行数
     */
    @Override
    public int update(Carts carts) {
        return this.cartsMapper.update(carts);
    }

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    @Override
    public boolean deleteById(Integer id) {
        return this.cartsMapper.deleteById(id) > 0;
    }

    /**
     * 查询是否有了
     *
     * @param carts
     * @return
     */
    @Override
    public Carts selectByUidGid(Carts carts) {
        return this.cartsMapper.selectByUidGid(carts);
    }
}
